{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Electronic Structure and Sommerfeld Factor\n",
    "\n",
    "This notebook shows how to calculate the sommerfeld factor for a charged defect\n",
    "\n",
    "See Landsberg, Recombination in Semiconductors (Cambridge University Press, 2009) for the detail. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Bohr radius"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$a_{B}=\\frac{4\\pi\\epsilon_{0}\\hbar^{2}}{m_{e}e^{2}} = 5.291772083\\times10^{-11} \\mathrm{m} =\n",
    " 0.53 Å$  \n",
    "$a_{B}^{*}=\\frac{\\epsilon}{m_{e}^{*}/m_{e}}a_{B}$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "3.141592"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "BohrRadius = 5.291772083e-11;                           # m \n",
    "Boltzmann = 1.3806504e-23;                              # kg m^2 / K s^2 \n",
    "ElectronVolt = 1.602176487e-19;                         # kg m^2 / s^2 \n",
    "PlancksConstantHbar = 1.05457162825e-34;                # kg m^2 / s \n",
    "PlancksConstantH = 6.626070040e-34;\n",
    "ElectronCharge = 1.602176487e-19;                       # A s \n",
    "VacuumPermittivity = 8.854187817e-12;                   # A^2 s^4 / kg m^3 \n",
    "MassElectron = 9.10938188e-31;                          # kg\n",
    "pi = 3.141592"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Effective masses of CZTS and CZTSe"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2.9104746456500003e-9\n",
      "1.3097135905424999e-9\n",
      "6.03262017462e-9\n",
      "2.622878336791304e-9\n"
     ]
    }
   ],
   "source": [
    "m_e_CZTS = 0.18\n",
    "m_h_CZTS = 0.40\n",
    "m_e_CZTSe = 0.10\n",
    "m_h_CZTSe = 0.23\n",
    "ϵ_0_CZTS = 9.9\n",
    "ϵ_0_CZTSe = 11.4\n",
    "\n",
    "a_B_e_CZTS  = ϵ_0_CZTS/m_e_CZTS*BohrRadius\n",
    "a_B_h_CZTS  = ϵ_0_CZTS/m_h_CZTS*BohrRadius\n",
    "a_B_e_CZTSe = ϵ_0_CZTSe/m_e_CZTSe*BohrRadius\n",
    "a_B_h_CZTSe = ϵ_0_CZTSe/m_h_CZTSe*BohrRadius\n",
    "\n",
    "println(a_B_e_CZTS)\n",
    "println(a_B_h_CZTS)\n",
    "println(a_B_e_CZTSe)\n",
    "println(a_B_h_CZTSe)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "effective electron dos: 2.21090565867473e24\n",
      "effective hole dos: 7.324052362423178e24\n"
     ]
    }
   ],
   "source": [
    "T = 330\n",
    "NC=2*(2*pi*m_e_CZTS*MassElectron*Boltzmann*T/PlancksConstantH^2)^(3/2.)\n",
    "NV=2*(2*pi*m_h_CZTS*MassElectron*Boltzmann*T/PlancksConstantH^2)^(3/2.)\n",
    "println(\"effective electron dos: $(NC)\")\n",
    "println(\"effective hole dos: $(NV)\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Thermal velocity\n",
    "$v_{t}=\\sqrt(3k_{B}T/m^{*})$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "v_n-CZTS: 2.7528491223063312e7 cm/s\n",
      "v_p-CZTS: 1.8466673307832763e7 cm/s\n"
     ]
    }
   ],
   "source": [
    "T = 300\n",
    "println(\"v_n-CZTS: $(sqrt(3*Boltzmann*T/(m_e_CZTS*MassElectron))*100) cm/s\")\n",
    "println(\"v_p-CZTS: $(sqrt(3*Boltzmann*T/(m_h_CZTS*MassElectron))*100) cm/s\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "v_n-GaAs(0.063): 4.6531642966857165e7 cm/s\n",
      "v_p-GaAs(0.45): 1.741054656256688e7 cm/s\n"
     ]
    }
   ],
   "source": [
    "println(\"v_n-GaAs(0.063): $(sqrt(3*Boltzmann*T/(0.063*MassElectron))*100) cm/s\")\n",
    "println(\"v_p-GaAs(0.45): $(sqrt(3*Boltzmann*T/(0.45*MassElectron))*100) cm/s\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Sommerfeld factor\n",
    "\n",
    "see Landsberg, Recombination in Semiconductors (Cambridge University Press, 2009)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Attractive Center: 6.968801315172801\n",
      "Repulsive  Center: 0.03585884534492529\n"
     ]
    }
   ],
   "source": [
    "# Electron capture in CZTS \n",
    "Z = 1\n",
    "ER=13.6*ElectronCharge * (m_e_CZTS/ϵ_0_CZTS^2)  # Effective Rydberg\n",
    "\n",
    "s=4*Z*(pi*ER/Boltzmann/T)^0.5\n",
    "println(\"Attractive Center: $(s)\")\n",
    "\n",
    "K=(pi^2*Z^2*ER/Boltzmann/T)\n",
    "s=8/sqrt(3)*K^(2/3.)*exp(-3*K^(1/3.))\n",
    "println(\"Repulsive  Center: $(s)\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Attractive Center: 10.38847564161088\n",
      "Repulsive  Center: 0.008774989212739687\n"
     ]
    }
   ],
   "source": [
    "# Hole capture in CZTS\n",
    "Z = 1\n",
    "ER=13.6*ElectronCharge * (m_h_CZTS/ϵ_0_CZTS^2)  # Effective Rydberg\n",
    "\n",
    "s=4*Z*(pi*ER/Boltzmann/T)^0.5\n",
    "println(\"Attractive Center: $(s)\")\n",
    "\n",
    "K=(pi^2*Z^2*ER/Boltzmann/T)\n",
    "s=8/sqrt(3)*K^(2/3.)*exp(-3*K^(1/3.))\n",
    "println(\"Repulsive  Center: $(s)\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Reading list"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "1. R. Pässler, Phys. Status Solidi B 76, 647 (1976)\n",
    "\n",
    "2. R. Pässler, Phys. Status Solidi B 78, 625 (1976)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Julia 1.4.1",
   "language": "julia",
   "name": "julia-1.4"
  },
  "language_info": {
   "file_extension": ".jl",
   "mimetype": "application/julia",
   "name": "julia",
   "version": "1.4.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
